package com.hiultra.archive.service;

import java.text.ParseException;
import java.util.List;

import com.fasterxml.jackson.core.JsonProcessingException;
import com.hiultra.archive.domain.ArchiveDesTask;
import com.hiultra.archive.domain.vo.ResultEntity;

/**
 * 销毁任务Service接口
 *
 * @author paidaxing
 * @date 2024-07-23
 */
public interface IArchiveDesTaskService
{
    /**
     * 查询销毁任务
     *
     * @param taskId 销毁任务主键
     * @return 销毁任务
     */
    public ArchiveDesTask selectArchiveDesTaskByTaskId(String taskId);

    /**
     * 查询销毁任务列表
     *
     * @param archiveDesTask 销毁任务
     * @return 销毁任务集合
     */
    public List<ArchiveDesTask> selectArchiveDesTaskList(ArchiveDesTask archiveDesTask) throws JsonProcessingException;

    /**
     * 新增销毁任务
     *
     * @param archiveDesTask 销毁任务
     * @return 结果
     */
    public int insertArchiveDesTask(ArchiveDesTask archiveDesTask);

    /**
     * 修改销毁任务
     *
     * @param archiveDesTask 销毁任务
     * @return 结果
     */
    public int updateArchiveDesTask(ArchiveDesTask archiveDesTask);

    /**
     * 批量删除销毁任务
     *
     * @param taskIds 需要删除的销毁任务主键集合
     * @return 结果
     */
    public int deleteArchiveDesTaskByTaskIds(String[] taskIds);

    /**
     * 删除销毁任务信息
     *
     * @param taskId 销毁任务主键
     * @return 结果
     */
    public int deleteArchiveDesTaskByTaskId(String taskId);

    /**
     * 销毁任务结果上报接口
     * @param archiveDesTask
     * @return
     */
    public int archiveDesTaskResultReport(ArchiveDesTask archiveDesTask) throws JsonProcessingException;

    /**
     * 档案销毁任务下发接口
     *
     * @param data
     * @return 结果
     */
    public ResultEntity insertIssuedArchiveDesTask(String data);

    /**
     * 销毁任务结果上报接口
     * @return
     */
    public ResultEntity timingArchiveDesTaskResultReport();
}
